﻿$(document).ready(function () {
    //attach handler when assist radio buttons change
    //$("#divValues").bind("change", function () { OnRadioChanged() });
    //$("#divDates").bind("change", function () { OnRadioChanged() });

    //run the first time to set appropriately
    //OnRadioChanged();

    //convert to fancy radio buttons
    //$("input[type=radio]").each(function () { $(this).button(); });

    //set default buttons for dialogs
    //$(document).keypress(function (e) {
    //    if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {
    //        if ($('#divDialogSave').dialog('isOpen'))
    //            $('[aria-labelledby$=divDialogSave]').find(":button:contains('OK')").click();
    //        else if ($('#divDialogDelete').dialog('isOpen'))
    //            $('[aria-labelledby$=divDialogSupport]').find(":button:contains('OK')").click();
    //        else if ($('#divDialogSupport').dialog('isOpen'))
    //            $('[aria-labelledby$=divDialogSupport]').find(":button:contains('OK')").click();
    //        else if ($('#divDialogValues').dialog('isOpen'))
    //            $('[aria-labelledby$=divDialogValues]').find(":button:contains('OK')").click();
    //        return false;
    //    }
    //});

    //$("[id$='txtDate1']").datepicker({ dateFormat: "mm/dd/yy" });
    //$("[id$='txtDate2']").datepicker({ dateFormat: "mm/dd/yy" });

    //see if hidden field was set to indicate that parameter dialog should be displayed
    if ($("[id$='hdnMustSelect']").val() == "true") showMustSelect();

});

//var isDates = false
//var lstTxtName = ""

//function showDialogValues(txtName) {

//    //Overview:
//    //1. set up dialog in hidden div for selecting either numbers or dates
//    //2. use JQuery to display popup dialog
//    //3. when popup is closed, build string and place in textbox

//    //Let's get started:

//    isDates = (txtName == "txtDateTime");
//    lastTxtName = txtName;

//    //1. set up dialog in hidden div for selecting either numbers or dates
//    if (isDates) {
//        $("#divValues").hide();
//        $("#divDates").show();
//    }
//    else {
//        $("#divValues").show();
//        $("#divDates").hide();
//    }

//    //clear prior entries
//    $("#Text").text("");

//    //force correct display
//    OnRadioChanged();

//    //2. use JQuery to display popup dialog

//    PageMethods.GetResource("QueryAssist", function (res) {
//        $("#divDialogValues").attr("title", res);
//        $("#divDialogValues").dialog({
//            modal: true,
//            width: 700,
//            height: 250
//        })
//    })
//}

//function UpdateFieldsValues() {
//    //3. when popup is closed, build string and place in textbox

//    var str = "";

//    //determine which radio button was selected
//    var op;
//    if (isDates) {
//        op = $("input:radio[name$='rblDates']:checked").val();
//    }
//    else {
//        op = $("input:radio[name$='rblValues']:checked").val();
//    };

//    var v1 = $("#txt1").val();
//    var v2 = $("#txt2").val();

//    switch (op) {
//        case "between": {
//            if (!$.isNumeric(v1) || !$.isNumeric(v2)) return;
//            str = "BETWEEN " + v1 + " AND " + v2;
//            break;
//        }
//        case "not between": {
//            if (isDates) { if (!isDate(v1) || !isDate(v2)) return } else { if (!$.isNumeric(v1) || !$.isNumeric(v2)) return };
//            str = "NOT BETWEEN " + v1 + " AND " + v2;
//            break;
//        }
//        case "date": {
//            if (!isDate(v1)) return;
//            str = "BETWEEN " + dateString(new Date(v1), "00:00") + " AND " + dateString(new Date(v1), "23:59");
//            break;
//        }
//        case "monthyear": {
//            if (!$.isNumeric(v1) || !$.isNumeric(v2) || v1 < 1 || v1 > 12 || v2 < 1900 || v2 > 2100) return;
//            str = "MONTH(Date_Time)=" + v1 + " AND YEAR(Date_Time)=" + v2;
//            break;
//        }
//        case "month": {
//            if (!$.isNumeric(v1) || v1 < 1 || v1 > 12) return;
//            str = "MONTH(Date_Time)=" + v1;
//            break;
//        }
//        case "year": {
//            if (!$.isNumeric(v2) || v2 < 1900 || v2 > 2100) return;
//            str = "YEAR(Date_Time)=" + v2;
//            break;
//        }
//        case "daterange": {
//            str = "BETWEEN " + dateString(new Date(v1), "00:00") + " AND " + dateString(new Date(v2), "23:59");
//            break;
//        }
//        default: {
//            if (!$.isNumeric(v1)) return;
//            str = op + " " + v1;
//            break;
//        }
//    }

//    $("[id$='" + lastTxtName + "']").val(str); //need to get name of control as rendered on page

//    $(this).dialog("close");
//};

//function dateString(datevalue, timestring) {
//    //convert date to string appropriate for SQL (only works for SQL Server)
//    if (isNaN(datevalue))
//        return "";
//    else
//        return "'" + padLeft(1 + datevalue.getMonth(), 2) + "/" + padLeft(datevalue.getDate(), 2) + "/" + (1900 + datevalue.getYear()) + " " + timestring + "'";
//}

//function padLeft(value, size) {
//    var s = "0000000000" + value
//    return s.substr(s.length - size);
//}

//function isDate(sDate) {
//    var scratch = new Date(sDate);
//    if (scratch.toString() == "NaN" || scratch.toString() == "Invalid Date") {
//        return false;
//    }
//    else {
//        return true;
//    }
//}

//function OnFailed(error, userContext, methodName) {
//    if (error !== undefined && error !== null) {
//        alert(error.get_message);
//    }
//}

//function OnRadioChanged() {
//    //whenever radio button is changed, may need to change labels
//    var op;
//    if (isDates) {
//        op = $("#divDates input:checked").val();
//    }
//    else {
//        op = $("#divValues input:checked").val();
//    }

//    $("#txt1").datepicker("destroy");
//    $("#txt2").datepicker("destroy");

//    //hide all labels
//    $("#divDialogValues td span").hide();
//    $("#txt1").show();
//    $("#txt2").hide();

//    //clear prior contents
//    $("#txt1").val("");
//    $("#txt2").val("");

//    //reset and enable labels and textboxes based on radio button selection
//    switch (op) {
//        case "between": 
//        case "not between": {
//            $("[id$='lblMin']").show();
//            $("[id$='lblMax']").show();
//            $("#txt2").show();
//            break;
//        }
//        case "date": {
//            $("[id$='lblDate']").show();
//            $("#txt1").datepicker({ dateFormat: "mm/dd/yy" });
//            break;
//        }
//        case "monthyear": {
//            $("[id$='lblMonth']").show();
//            $("[id$='lblYear']").show();
//            $("#txt2").show();
//            break;
//        }
//        case "month": {
//            $("[id$='lblMonth']").show();
//            break;
//        }
//        case "year": {
//            $("[id$='lblYear']").show();
//            $("#txt1").hide();
//            $("#txt2").show();
//            break;
//        }
//        case "daterange": {
//            $("[id$='lblDate1']").show();
//            $("[id$='lblDate2']").show();
//            $("#txt2").show();
//            $("#txt1").datepicker({ dateFormat: "mm/dd/yy" });
//            $("#txt2").datepicker({ dateFormat: "mm/dd/yy" });
//            break;
//        }
//        default: {
//            $("[id$='lblValue']").show();
//            break;
//        }
//    }
//    if (op.indexOf("between") != -1) {
//    }

//    else {
//    }

//};

//function showDialogSave() {

//    //give error if forgot to fill in filters

//    if ($("[id$='txtStationID']").val() +
//        $("[id$='txtDateTime']").val() +
//        $("[id$='txtPCode']").val() +
//        $("[id$='txtCCode']").val() +
//        $("[id$='txtResult']").val() +
//        $("[id$='txtDepth']").val() +
//        $("[id$='txtRCode']").val() +
//        $("[id$='txtLCode']").val() +
//        $("[id$='txtSCode']").val() +
//        $("[id$='txtQCode']").val() == "") {
//        PageMethods.GetResource("CannotDelete", function (result) {
//            alert(result);
//        })
//        return;
//    }

//    //Overview:
//    //1. set up dialog in hidden div for entering query name
//    //2. use JQuery to display popup dialog
//    //3. when popup is closed, call PageMethod to save the query

//    //Let's get started:

//    //clear prior entries (note: asp control prepend to ID, so must use this jQuery form; want to use asp controls so will automatically convert languages)
//    $("[id$='txtQueryName']").val("");
//    $("[id$='chkQueryName']").prop("checked",false);

//    //2. use JQuery to display popup dialog

//    PageMethods.GetResource("SaveQuery", function (res) {
//        $("#divDialogSave").attr("title", res);
//        var dlg = $("#divDialogSave").dialog({
//            modal: true,
//            width: 700,
//            height: 250
//        });
//        //following is needed because the system dynamically places the div outside of the form, so postbacks are ignored--this puts it back into the form
//        dlg.parent().appendTo($("form:first"));
//    })

//};

function showProgress() {
    $("#divProgress").progressbar({
        value: false //indeterminate
    });

    PageMethods.GetResource("ProgressTitle", function (res) {
        $("#divDialogProgress").attr("title", res);
        var dlg = $("#divDialogProgress").dialog({
            modal: true,
            width: 300,
            height: 100,
            resizable: false,
            draggable: false,
            closeOnEscape: false
        })
    })
};

function showMustSelect() {
    PageMethods.GetResource("MustSelect", function (res) {
        $("#divDialogMustSelect").attr("title", res);

        var dlg = $("#divDialogMustSelect").dialog({
            modal: true,
            width: 400,
            height: 175,
            resizable: false,
            draggable: false,
            closeOnEscape: true
        });

        $("[id$='hdnMustSelect']").val("false");

    });

};

//function showDialog() {
//    var dlg = $('[id$="pnlDialogDelete"]').dialog({modal: true
//                , autoOpen: false
//                , title: 'test title'
//                , width: 400
//                , height: 'auto'
//                , open: function(type,data){
//                                            $('.ui-widget-overlay').appendTo('form');
//                                            $(this).parent().appendTo('form');
//                                            }
//                }); 
//    dlg.dialog('open');
//}
